package ly.count.ohos.sdk;

import ohos.aafwk.ability.Ability;
import ohos.global.configuration.Configuration;
import ohos.utils.PacMap;

public class ModuleBase {
    final Countly mCly;

    ModuleBase(Countly cly) {
        mCly = cly;
    }

    void halt() {
        throw new UnsupportedOperationException();
    }

    /**
     * Called manually by a countly call from the developer
     *
     * @param newConfig
     */
    void onConfigurationChanged(Configuration newConfig) {
    }

    /**
     * Called manually by a countly call from the developer
     * @param ability
     */
    void onAbilityStarted(Ability ability) {
    }

    /**
     * Called manually by a countly call from the developer
     */
    void onAbilityStopped() {
    }

    void callbackOnAbilityStarted(Ability ability) {
    }

    void callbackOnAbilityActive(Ability ability) {
    }

    void callbackOnAbilityInactive(Ability ability) {
    }

    void callbackOnAbilityStopped(Ability ability) {
    }

    void callbackOnAbilitySaveInstanceState(PacMap pacMap) {
    }

    void callbackOnAbilityForeground(Ability ability) {
    }

    void callbackOnAbilityBackground(Ability ability) {
    }

    void deviceIdChanged() {
    }

    void initFinished(CountlyConfig config) {
    }
}
